#include "AVLTree.h"

namespace czb 
{

	void func1()
	{
		AVLTree<int,int> t;
		t.Insert(make_pair(20, 12));
		t.Insert(make_pair(10, 13));
		t.Insert(make_pair(30, 14));
		t.Insert(make_pair(1, 15));
		t.Insert(make_pair(15, 16));
		t.Insert(make_pair(5, 17));

		t.MideOrder();

		
	}

	void func2()
	{
		AVLTree<int, int> t;
		t.Insert(make_pair(10, 11));
		t.Insert(make_pair(20, 12));
		t.Insert(make_pair(25, 13));
		t.Insert(make_pair(21, 14));
		t.Insert(make_pair(5, 15));
		t.Insert(make_pair(20, 16));
		t.Insert(make_pair(15, 17));

		t.MideOrder();
	}

	void func3()
	{
		AVLTree<int, int> t;

		t.Insert(make_pair(20, 11));
		t.Insert(make_pair(30, 16));
		t.Insert(make_pair(10, 12));
		t.Insert(make_pair(15, 13));
		t.Insert(make_pair(5, 14));
		//t.Insert(make_pair(14, 15));
		t.Insert(make_pair(16, 15));



		t.MideOrder();

		cout << t.IsBalance() << endl;
	}

	void func4()
	{
		AVLTree<int, int> t;

		t.Insert(make_pair(10, 11));
		t.Insert(make_pair(20, 12));
		t.Insert(make_pair(5, 14));


		t.Insert(make_pair(15, 13));
		t.Insert(make_pair(30, 16));
		t.Insert(make_pair(16, 15));



		t.MideOrder();

		cout << t.IsBalance() << endl;
	}
	
}


int main()
{

	czb::func3();

	return 0;
}